我正在学习基本的C++,现在我从用户那里得到了一个字符串,我想检查他们是否输入了整个文件名(包括.txt).我有字符串,但如何检查字符串是否以".txt"结尾?
string fileName;
cout << "Enter filename: \n";
cin >> fileName;
string txt = fileName.Right(4);
Run Code Online (Sandbox Code Playgroud)
该Right(int)方法仅适用于CString,因此上述代码不起作用.如果可能的话,我想使用常规字符串.有任何想法吗?
我有一个名为Legal控制的视图HomeController
我可以使用锚标记或 TagHelper 链接到此页面:
<a asp-controller="Home" asp-action="Legal">Cookie policy</a>
Run Code Online (Sandbox Code Playgroud)
在视图的 html 中Legal有一个部分id="cookies"
使用常规锚标记,如果我这样做,我可以让页面自动滚动到那里:
<a href="/Legal#cookies">Cookie policy</a>
Run Code Online (Sandbox Code Playgroud)
当我尝试在 TagHelper 中做同样的事情时asp-action="Legal#cookies",锚点是用 生成的href="/Legal%23cookies",它不会被我的控制器拾取。
我在这个相关问题中读到了如何在常规锚标签中使用 Razor 来解决这个问题。但是,我想使用 TagHelper 来做到这一点。有没有办法做到这一点?
我正在学习Java,并且我已经知道方法使用括号来传递参数.但是,我也注意到有时候我看到代码对我来说看起来像一个方法,但它没有括号.
MyObject.something()
MyObject.somethingElse
Run Code Online (Sandbox Code Playgroud)
whereElse没有括号.我假设这类似于arrayList具有size方法来获取其大小:
myList.size()
Run Code Online (Sandbox Code Playgroud)
而数组的长度可以得到它的大小,而没有括号:
myArray.length
Run Code Online (Sandbox Code Playgroud)
我的假设是否正确?如果没有,有什么区别? 这可能是一个基本问题,但由于我需要解释这个问题的数量,我在搜索它时遇到了麻烦.
我正在学习C++和java,我已经注意到如果你有条件,如果条件为真,即使你没有明确地写,也会执行以下代码 == true
考虑以下非常简单的C++代码:
bool c_plus_plus_is_cool(){
return true;
}
int main(){
if (c_plus_plus_is_cool()) {
cout << "C++ is cool!";
}
return 0;
}
Run Code Online (Sandbox Code Playgroud)
问:有什么区别
if (c_plus_plus_is_cool())
和if (c_plus_plus_is_cool() == true) ?
在其他语言中也是这种情况(比如Java(==true这次我一直在写这个......))?
我有一个网格,我想传递给另一个显示它的函数.但是,我似乎无法弄清楚我将如何声明该函数,多维数组通过引用传递给该函数.
void foo(bool[][]&); //INCORRECT: how is a correct way to declare this function?
// rest of code :
int main(){
bool grid[50][50] = {false};
foo(grid);
return 0;
}
void foo(bool& grid[][]){
// do things
}
Run Code Online (Sandbox Code Playgroud)
这应该是一个基本问题,但我在寻找解决方案时遇到了很多麻烦.
我正在尝试学习Swing并制作了一个面板(在其他StackOverflow代码的帮助下).我在一个框架上添加了一个棋盘设计,但我发现框架没有它应该的那么大.
这是我的代码:
@Override
protected void paintComponent(Graphics g) {
int width = getWidth(), height = getHeight();
g.clearRect(0, 0, width, height);
g.setColor(Color.BLACK);
for (int i=0;i<=width;i+=50) {
g.drawLine(0,i,width,i);
}
for (int i=0;i<=height;i+=50) {
g.drawLine(i,0,i,height);
}
label.setText("H = "+ getHeight() +" W = "+ getWidth()); // check actual size
add(label);
}
private void gui(Pan window) {
frame = new JFrame();
Container container = frame.getContentPane();
container.add(window);
frame.setSize(400, 400); // size written here
frame.setVisible(true);
}
Run Code Online (Sandbox Code Playgroud)
如果你运行它,你会看到窗口的大小.它将是362乘384,而不是代码中写的400乘400.
如果我将尺寸更改为500乘500,则窗口将为462乘484.
问:为什么尺寸偏差为38和16?
c++ ×3
java ×3
anchor ×1
arrays ×1
asp.net-mvc ×1
conditional ×1
parentheses ×1
string ×1
swing ×1