0%

c++编程记录

  • 问题1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
error: cannot convert ‘std::__cxx11::basic_string<char>::iterator’ {aka ‘__gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> >’} to ‘const char*’
29 | FileNameNoTag.erase(std::remove(FileNameNoTag.begin(), FileNameNoTag.end(), ':'), FileNameNoTag.end());
| ~~~~~~~~~~~~~~~~~~~^~
| |
| std::__cxx11::basic_string<char>::iterator {aka __gnu_cxx::__normal_iterator<char*, std::__cxx11::basic_string<char> >}
In file included from /usr/include/c++/9/cstdio:42,
from /usr/include/c++/9/ext/string_conversions.h:43,
from /usr/include/c++/9/bits/basic_string.h:6496,
from /usr/include/c++/9/string:55,
from /usr/include/c++/9/bits/locale_classes.h:40,
from /usr/include/c++/9/bits/ios_base.h:41,
from /usr/include/c++/9/ios:42,
from /usr/include/c++/9/ostream:38,
from /usr/include/c++/9/iostream:39,
from 2.cpp:2:
/usr/include/stdio.h:146:32: note: initializing argument 1 of ‘int remove(const char*)’
146 | extern int remove (const char *__filename) __THROW;
| ~~~~~~~~~~~~^~~~~~~~~~

问题2:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
In file included from ../drivers/media/i2c/useruto/imx390.c:19:
../include/linux/module.h:137:7: warning: ‘cleanup_module’ specifies less restrictive attribute than its target ‘imx390_serdes_driver_exit’: ‘cold’ [-Wmissing-attributes]
137 | void cleanup_module(void) __attribute__((alias(#exitfn)));
| ^~~~~~~~~~~~~~
../include/linux/device.h:1509:1: note: in expansion of macro ‘module_exit’
1509 | module_exit(__driver##_exit);
| ^~~~~~~~~~~
../include/linux/i2c.h:780:2: note: in expansion of macro ‘module_driver’
780 | module_driver(__i2c_driver, i2c_add_driver, \
| ^~~~~~~~~~~~~
../drivers/media/i2c/useruto/imx390.c:104:1: note: in expansion of macro ‘module_i2c_driver’
104 | module_i2c_driver(imx390_serdes_driver);
| ^~~~~~~~~~~~~~~~~
In file included from ../drivers/media/i2c/useruto/imx390.c:18:
../drivers/media/i2c/useruto/imx390.c:104:19: note: ‘cleanup_module’ target declared here
104 | module_i2c_driver(imx390_serdes_driver);
| ^~~~~~~~~~~~~~~~~~~~
../include/linux/device.h:1505:20: note: in definition of macro ‘module_driver’
1505 | static void __exit __driver##_exit(void) \
| ^~~~~~~~
../drivers/media/i2c/useruto/imx390.c:104:1: note: in expansion of macro ‘module_i2c_driver’
104 | module_i2c_driver(imx390_serdes_driver);
| ^~~~~~~~~~~~~~~~~
In file included from ../drivers/media/i2c/useruto/imx390.c:19:
../include/linux/module.h:131:6: warning: ‘init_module’ specifies less restrictive attribute than its target ‘imx390_serdes_driver_init’: ‘cold’ [-Wmissing-attributes]
131 | int init_module(void) __attribute__((alias(#initfn)));
| ^~~~~~~~~~~
../include/linux/device.h:1504:1: note: in expansion of macro ‘module_init’
1504 | module_init(__driver##_init); \
| ^~~~~~~~~~~
../include/linux/i2c.h:780:2: note: in expansion of macro ‘module_driver’
780 | module_driver(__i2c_driver, i2c_add_driver, \
| ^~~~~~~~~~~~~
../drivers/media/i2c/useruto/imx390.c:104:1: note: in expansion of macro ‘module_i2c_driver’
104 | module_i2c_driver(imx390_serdes_driver);
| ^~~~~~~~~~~~~~~~~
In file included from ../drivers/media/i2c/useruto/imx390.c:18:
../drivers/media/i2c/useruto/imx390.c:104:19: note: ‘init_module’ target declared here
104 | module_i2c_driver(imx390_serdes_driver);
| ^~~~~~~~~~~~~~~~~~~~
../include/linux/device.h:1500:19: note: in definition of macro ‘module_driver’
1500 | static int __init __driver##_init(void) \
| ^~~~~~~~
../drivers/media/i2c/useruto/imx390.c:104:1: note: in expansion of macro ‘module_i2c_driver’
104 | module_i2c_driver(imx390_serdes_driver);
| ^~~~~~~~~~~~~~~~~