好吧,我已经用C++编程了一段时间了,我正在尝试帮助一个朋友完成他在C中完成的任务.在看了如何在C中做一些与C++不同的事情后,我开始帮助我的朋友制作一个简单的程序,将某些内容打印到控制台,然后读取用户输入的内容.我们有以下代码:
#include <stdlib.h>
#include <stdio.h>
#define WIN32_LEAN_AND_MEAN
#include <Windows.h>
int main(int argc, char* argv[])
{
char str1[] = "Please enter your name.";
printf(str1); // This appears to be the nuisance line.
char buffer[64];
fgets(buffer, 64, stdin);
printf("Your name is %s", buffer);
Sleep(5000);
return 0;
}
Run Code Online (Sandbox Code Playgroud)
好的,现在这里是奇怪的事情.尝试编译时,我在控制台中收到以下错误.
1>c:\users\nkosi\documents\visual studio 2012\projects\c++\credit2\credit2\main.c(12): error C2143: syntax error : missing ';' before 'type'
1>c:\users\nkosi\documents\visual studio 2012\projects\c++\credit2\credit2\main.c(13): error C2065: 'buffer' : undeclared identifier
1>c:\users\nkosi\documents\visual studio 2012\projects\c++\credit2\credit2\main.c(13): warning C4047: 'function' : 'char *' differs in levels of …Run Code Online (Sandbox Code Playgroud) 我的问题标题几乎要求一切.我最近发现在C++中通过const引用传递许多值并将类中的某些方法标记为常量方法是很好的编程习惯.现在,我有一个库,我已经为自己写了一段时间,现在完全没有正确性,所以我想开始一点一点地纠正.
在哪些具体情况下,我应该使方法不变?到目前为止,我知道"getter"方法通常应该是常量的(因为一个代码中的代码不应该修改任何类变量),但我是否对所有被认为是getter的方法,或者只是特定的方法呢?除了getter方法之外,还应该使其他方法的方法保持不变?