我有一个makefile,它为两个类(和main)创建目标文件,其中一个类只是在.h文件中定义.在我的makefile中,我有一行说
FileName.o: FileName.h
g++ -c FileName.h
Run Code Online (Sandbox Code Playgroud)
但是当我尝试编译它时说它找不到FileName.o
我是否必须创建FileName.cpp才能进行编译?
我想知道你是否必须在一个使用它作为朋友的类中使用#include"Class1.h".例如,授予Class1类权限的类的.h文件.
class Class2 {
friend class Class1;
}
Run Code Online (Sandbox Code Playgroud)
你需要#include"Class1.h"还是没有必要?同样在Class2类中,永远不会创建或使用Class1对象.Class1只是操纵Class2而不是相反.
我现在正在学习c ++课程,我知道for循环会像这样工作,但我想知道它是"正常"还是"正确"
for (int i = 0; getline(cin, input); i++)
Run Code Online (Sandbox Code Playgroud)
应该这样做
int i = 0;
while (getline(cin, input))
i++;
Run Code Online (Sandbox Code Playgroud)
我只是想知道,因为我知道for循环应该是一个计数器循环,但这个条件的条件与通过i控件的次数没有关系.
可以说我有
int j = 23;
for (j < 20; j++) {
//do stuff
}
Run Code Online (Sandbox Code Playgroud)
我知道在这种情况下这似乎很愚蠢,但这可能吗?或者你必须这样做
int j = 23;
for (j; j < 20; j++) {
//do stuff
}
Run Code Online (Sandbox Code Playgroud) 出于某种原因,当我运行以下代码时,程序打印出"JDN4"或"JDN16",我总是希望它打印"JDN",然后打印三个数字,范围从0到9; 例如,"JDN123"或"JDN045"或"JDN206".代码有什么问题?
import java.util.*;
public class Document2 {
public static void main(String[] args) {
String initials = "JDN";
int randomNumbers;
Random generator = new Random();
int randomNumber1 = generator.nextInt(9);
int randomNumber2 = generator.nextInt(9);
int randomNumber3 = generator.nextInt(9);
randomNumbers = randomNumber1 + randomNumber2 + randomNumber3;
String userName = initials + randomNumbers;
System.out.println("Your username is " + userName + ".");
}
}
Run Code Online (Sandbox Code Playgroud) 可以说我在下面有这个程序.现在我想将用户的名字和姓氏传递给方法而不再调用它并更改参数并让用户重新键入名字和姓氏.
我知道我可以使用两种不同的方法来查找名字和姓氏,但我想知道是否有办法做到这一点只是一种方法.
import java.util.Scanner;
public class Document3 {
public static void main(String[] args) {
String name;
name = getName("lastName"); //But how would I get my lastName WITHOUT recalling the method with "lastName" in the parameters?
System.out.println(name); //I want to also get the other name into in my main method somehow
}
public static String getName(String nameOption) {
Scanner x = new Scanner(System.in);
String firstName = "";
String lastName = "";
String nameChoice = "";
System.out.print("Please enter your first name: "); …Run Code Online (Sandbox Code Playgroud) 我想在我的类的头文件中声明一个指向整数数组的指针.我有
private:
int *theName;
Run Code Online (Sandbox Code Playgroud)
然后在构造函数中
theName = new int[10];
Run Code Online (Sandbox Code Playgroud)
这会有用吗?还有另一种方法可以做到这一点,所以你有一个指向数组的指针吗?
我以为int*theName创建了一个指向整数而不是整数数组的指针,如果这创建了一个指向整数数组的指针,那么如何创建一个只指向整数的指针?
我也可以在析构函数中调用
delete theName; theName = NULL;
Run Code Online (Sandbox Code Playgroud)
是否会删除name整数数组对象,然后将name指向内存中的null?
谢谢